﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using RN.ERP.DTO;
using System.Data;
using System.ServiceModel.Web;

namespace RN.ERP
{
    [ServiceContract]
    public interface IKaoHeService
    {
        #region 考核-处罚扣分

        [OperationContract]
        string GetCorpDeDuckList(List<string> corpGuid, string areaCode);

        #endregion

        #region 代理考核申请

        [OperationContract]
        string GetCorpSnapList(int pageCount, int pageSize, string conditions, int roleId);
        [OperationContract]
        string GetCorpSnap(string keyGuid, string snapType, string areaCode);
        [OperationContract]
        string CorpSnapAdd(string corpUserGuid, string appId, string areaCode);
        [OperationContract]
        string CorpSnapEdit(string keyGuid, string appId, string areaCode);
        [OperationContract]
        string CorpSnapDel(string keyGuid, string areaCode);
        [OperationContract]
        string CorpSnapPost(string keyGuid, string corpUserGuid, string isrtUserGuid, string areaCode);
        [OperationContract]
        string CorpCancel(
            string snapGuid,
            string isrtUserGuid,
            string areaCode,
            bool isAll,
            string content,
            string isrtUserRole);
        [OperationContract]
        string CheckCorpSnapStatus(string corpSnapGuid, int flag, string areaCode);
        [OperationContract]
        string CompanyRegulatoryEdit(string corpUserGuid, string regulatory, string areaCode);
        [OperationContract]
        string GetCompanyRegulatory(string corpUserGuid, string areaCode);
        [OperationContract]
        string PersonEmpInsuranceNumEdit(string empGuid, string corpUserGuid, string insuranceNum, string areaCode);
        [OperationContract]
        string CompanyBankEdit(string corpUserGuid, string bankName, string bankAccNo, string areaCode);
        [OperationContract]
        string CheckCorpSnapYearIsExist(string corpUserGuid, string areaCode);
        #endregion

        #region 代理考核评分
        [OperationContract]
        string GetCorpSnapEvaluationScoreSum(string startDate, string endDate, string corpRoleIds, string cityRoleIds, string appId, string areaCode);
        [OperationContract]
        int GetCorpPersonCert(string corpUserGuid, string areaCode, int typeFlags);
        [OperationContract]
        string CorpEvaluationParamsEdit(string corpUserGuid, string evaluationParams, string areaCode);
        [OperationContract]
        string GetCorpAttachInfo(string corpUserGuid, string content, string areaCode);
        [OperationContract]
        string CorpEvaluationItemsStatistic(string snapGuid, string corpRoleIds, string cityRoleIds, string appId, int classId, string areaCode);
        [OperationContract]
        string GetCorpEvaluationItems(int evaluationId, string appId, int classId, string areaCode);
        [OperationContract]
        string GetCorpEvaluationState(int corpEvalId, string areaCode);
        /// <summary>
        /// 根据角色查看企业评价表的各类打分信息
        /// 2014-5-16 毛凯
        /// </summary>
        /// <param name="snapGuid"></param>
        /// <param name="corpUserGuid"></param>
        /// <param name="areaCode"></param>
        /// <returns></returns>
        [OperationContract]
        string GetCorpEvaluationScoreList(string snapGuid, string corpUserGuid, string roleIds, string areaCode);

        /// <summary>
        /// 打分汇总
        /// 2014-5-16 毛凯
        /// </summary>
        /// <param name="snapGuid"></param>
        /// <param name="corpUserGuid"></param>
        /// <param name="areaCode"></param>
        /// <returns></returns>
        [OperationContract]
        string SaveCorpEvaluation(string snapGuid, string corpUserGuid, string istUserGuid, string appId,int classId, string areaCode);
        [OperationContract]
        string GetCorpEvaluationScoreID(string corpUserGuid, string snapGuid, string isrtUserGuid, string areaCode);
        [OperationContract]
        string GetCorpEvaluationScore(int evaluationId, string appId, int classId, string areaCode);
        #endregion

        #region 企业评价信息子表
        [OperationContract]
        string AddCorpEvaluationSub(string corpEvaSub);

        [OperationContract]
        string GetCorp_EvaluationSub(int itemID, int treeID);
        #endregion

        #region 聊城年检
        [OperationContract]
        string GetEntitySnapList(
        int pageNum,
        int pageSize,
        string conditions,
        out int cnt);

        [OperationContract]
        string GetEntitySnapInfo(string entityGuid, int snapKind);

        [OperationContract]
        string SaveEntitySnapInfo(string snapModel);

        [OperationContract]
        string DeleteSnapInfo(string keyGuid, string areaCode);
        /// <summary>
        /// 保存审查结果
        /// </summary>      
        [OperationContract]
        string SaveAssessmentDetails(string data, string areaCode);

        /// <summary>
        /// 删除审查结果
        /// </summary>       
        [OperationContract]
         string  DeleteAssessmentDetails(int id, string optUser, string areaCode);
        

        /// <summary>
        /// 查询企业考核指标详细信息,指定指标请使用condition中IndexIDList
        /// </summary>     
        [OperationContract]     
         string GetCorpAssessmentDetails(string corpUserGuid,string  condition, string areaCode);
       
        #endregion

    }
}
